When Memory Corruption Met Concurrency: Vulnerabilities in Concurrent Programs
نویسندگان
چکیده
Concurrent programs are widespread in modern systems. They make better use of processor resources but inevitably introduce a new set problems terms reliability and security. Concurrency bugs usually lead to program crashes unexpected behavior, an active research topic. From security perspective, concurrency vulnerabilities those that exhibit harmful behavior exclusively concurrent executions. can take place diverse range environments, such as operating system kernels, file operations, or general-purpose multithreaded programs. A particular characteristic is it not only introduces problems, also enables traditional be triggered concurrent-specific ways. Those dangerous cause memory corruption, strong flexible primitive for exploitation, known corruption vulnerabilities. In this paper, we systematically analyze C C++ programs, their exploitation detection, focusing on We organize previous work bug characteristics highlight the differences relation Then, examine existence real-world by searching CVE database point out growing trend. Further, compare existing detection approaches towards corruption.
منابع مشابه
Detecting concurrency anomalies in transactional memory programs
Concurrent programs may suffer from concurrency anomalies that may lead to erroneous and unpredictable program behaviors. To ensure program correctness, these anomalies must be diagnosed and corrected. This paper addresses the detection of both lowand high-level anomalies in the Transactional Memory setting. We propose a static analysis procedure and a framework to address Transactional Memory ...
متن کاملExploiting Concurrency Vulnerabilities in System Call Wrappers
System call interposition allows the kernel security model to be extended. However, when combined with current operating systems, it is open to concurrency vulnerabilities leading to privilege escalation and audit bypass. We discuss the theory and practice of system call wrapper concurrency vulnerabilities, and demonstrate exploit techniques against GSWTK, Systrace, and CerbNG.
متن کاملVerifying Concurrent Programs by Memory Unwinding
We describe a new sequentialization-based approach to the symbolic verification of multithreaded programs with shared memory and dynamic thread creation. Its main novelty is the idea of memory unwinding (MU), i.e., a sequence of write operations into the shared memory. For the verification, we nondeterministically guess an MU and then simulate the behavior of the program according to any schedu...
متن کاملMemory Distance Measurement for Concurrent Programs
Memory distance analysis, the number of unique memory references made between two accesses to the same memory location, is an effective method to measure data locality and predict memory behavior. Many existing methods on memory distance measurement and analysis consider sequential programs only. With the trend towards concurrent programming, it is necessary to study the impact of memory distan...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: IEEE Access
سال: 2023
ISSN: ['2169-3536']
DOI: https://doi.org/10.1109/access.2023.3272833